import streamlit as st
from geopy.geocoders import Nominatim

# 设置Streamlit应用的标题
st.title('位置记录和导航应用')

# 上传位置信息块
with st.form("location_form"):
    # 用户可以输入经纬度
    latitude = st.number_input('经度', format="%.6f")
    longitude = st.number_input('纬度', format="%.6f")
    submitted = st.form_submit_button('上传并获取位置名称')
    if submitted:
        # 地理编码，转换经纬度为地址
        geolocator = Nominatim(user_agent="geoapiExercises")
        location = geolocator.reverse((latitude, longitude), language='zh')
        location_name = location.address if location else "未找到相应位置"

        # 显示位置名称
        st.write(f'位置名称: {location_name}')

        # TODO: 保存位置信息到数据库
        # TODO: 提供搜索功能，允许用户通过位置名称搜索之前保存的位置信息
        # TODO: 使用地图API显示位置并提供导航功能

# 一下是我们需要调用的一些API和服务，以及可能需要的库
# - Geopy: 用于地理编码
# - Database service (例如SQLite): 用于存储位置数据
# - 地图和导航服务API: 用于导航和可视化位置


# 按间距中的绿色按钮以运行脚本。
#if __name__ == '__main__':

  #  print_hi('PyCharm')

# 访问 https://www.jetbrains.com/help/pycharm/ 获取 PyCharm 帮助
